﻿using System.Collections.Generic;
using Cms.Domain;

namespace Cms.Application.Admin.Views
{
    public interface IEditDetailTemplateView : IAdminPageView, ITranslatable
    {
        int DetailTemplateID { get; }

        string Name { get; set; }

        string Description { get; set; }

        string SourceCode { get; set; }

        string DetailTemplateAreas { get; set; }

        string PageAreas { get; set; }

        string CurrentTab { get; }

        int SelectedLocaleID { get; set; }

        int SelectedVersionID { get; set; }

        int SelectedMasterTemplateID { get; set; }

        int SelectedPreferredMasterTemplateID { get; set; }

        void SetDetailTemplateID(int id);
        
        string GetSourceCodeStatus();

        void SetLocales(IList<Locale> locales);
        
        void SetVersions(IList<ContentTranslationVersion> versions, int publishedVersionID);
        
        void SetMasterTemplates(IList<MasterTemplate> masterTemplates);

        void PublishContentNotAllowed();

        void SetScheduledPublishings(IList<ScheduledPublishing> scheduledPublishings);
    }
}